Personal computer systems in general and IBM personal computers in particular have attained widespread use for providing computer power to many segments of today's modern society. Personal computer systems can usually be defined as a desk top, floor standing, or portable microcomputer that consists of a system unit having a principal system processor and associated volatile and non-volatile memory, a display monitor, a keyboard, one or more diskette drives, a fixed disk storage, and an optional printer. One of the distinguishing characteristics of these systems is the use of a motherboard or system planar to electrically connect these components together. These systems are designed primarily to give independent computing power to a single user and are inexpensively priced for purchase by individuals or small businesses. Examples of such personal computer systems are IBM's PERSONAL COMPUTER AT and IBM's PERSONAL SYSTEM/2 Models 25, 30, 50, 60, 70, 80, 90 and 95.
These systems can be classified into two general families. The first family, usually referred to as Family I models, use a bus architecture exemplified by the IBM PERSONAL COMPUTER AT and other "IBM compatible" machines. The second family, referred to as Family II Models, use IBM's MICRO CHANNEL bus architecture exemplified by IBM's PERSONAL SYSTEM/2 Models 50 through 95. The Family I models typically have use the popular INTEL 8088, 8086 or 80286 microprocessor as the principal processor. These processors have the ability to address one megabyte of memory. The Family II models typically use the high speed INTEL 80286, 80386, and 80486 microprocessors which can operate in a real mode to emulate the slower speed INTEL 8086 microprocessor or a protected mode which extends the addressing range from 1 megabyte to 4 Gigabytes for some models. In essence, the real mode feature of the 80286, 80386, and 80486 processors provide hardware compatibility with software written for the 8086 and 8088 microprocessors.
More recently, the technology embodied in the Intel microprocessors used in personal computers has been proposed for use in more advanced computer environments, such as tightly or loosely coupled parallel or multiple processing arrays. As the higher speed microprocessor technology is applied to such arrays, problems heretofore encountered in personal computer technology as here defined may be anticipated as appearing in such environments.
With the advent of newer operating systems designed in part to use the greater memory addressing capabilities of higher speed microprocessors there has come a need to provide facility for expansion of memory into the higher ranges. Such expansion is being accomplished using devices known as single inline memory modules, or SIMMs, made up from memory modules having varying memory capabilities. While such expansion has been accomplished (in part using strategies described more fully hereinafter), the use of ever faster microprocessors causes quality and time-of-flight of signals exchanged in memory access to become more critical. By "time-of-flight" is meant the amount of time necessary for a signal to be exchanged, such as for a data or address or other control signal to be exchanged between physical memory modules and the principal processor.
Looking toward the expansion of memory which may become desirable as an existing personal computer is adapted to developing technology, problems arise as SIMMs are used in accommodate such needs. In particular, while SIMMS of varying capacity such as 1, 2, 4 or 8 megabytes and using an assortment of different memory modules may be inserted onto a local memory bus, the number of sockets required to physically hold such SIMMs and variations among them lead to impedance mismatching. Solutions for such impedance mismatching are available, and require increased buffering (leading to slowing of memory accessing or time-of-flight) or more advanced semiconductor technology (leading to increased expense).
An alternative to SIMMs used in some computing environments is the SIPP (Single In-line Pin Package) memory module. The difference between a SIMM and a SIPP arises from the form of connector used--SIMMs use card edge connectors, while SIPPs use header pins. While the two forms are not interchangeable in terms of installation into a computer system environment, similar types of problems arise in systems using memory expansion with SIMMs and those using SIPPs.
An alternative approach is the use of memory expansion cards or boards accessed through the portion of the bus architecture provided for installation of option cards or boards such as is known for example, in the more advanced personal computers described above, as the MICROCHANNEL bus. While such an approach is viable, the installation of additional memory capability by installation of an option card uses up a scarce resource (slots on the bus) and slows access to the added memory. Further, such additions require more expensive data drivers which potentially increase electromagnetic compatibility emissions and which, in turn, lead to the use of preventative measures which cause signal under- or over-shoot and timing skew problems.